package com.nineclock.sign.service;

import com.nineclock.common.entity.PageResult;
import com.nineclock.sign.dto.SignInfoDTO;
import com.nineclock.sign.dto.SignListDTO;
import com.nineclock.sign.dto.SignReportFormsDTO;

import java.io.IOException;
import java.util.List;

public interface SignService {


    Integer getDayCount();


    void toSign(SignInfoDTO signInfoDTO);

    /**
     * PC: 查询签到列表
     * @param endTime
     * @param page
     * @param pageSize
     * @param startTime
     */
    PageResult<SignReportFormsDTO> querySignReportForms(String endTime, Integer page, Integer pageSize, String startTime);

    /**
     * PC: 导出签到列表
     */
    void exportSignData(String startTime, String endTime) throws IOException;


    /**
     * APP: 查询本月签到记录
     */
    List<SignInfoDTO>  querySignCurrentUserByMonth(String dateStr);

    /**
     * APP: 获取团队员工打卡列
     */
    List<SignListDTO> listSignAllUser(String dateStr);

}
